草庐IT

ios - -writeToURL 不会覆盖之前的写入

全部标签

ruby-on-rails - 在推送到 Heroku 之前自动预编译 Assets

在推送到Heroku之前,是否可以在Rails应用程序中自动预编译我的Assets?我总是忘记这样做,所以如果当我输入gitpushherokumaster时它会首先运行rakeassets:precompile就好了;git提交添加。;gitcommit-a-m"Precompile.",或类似的东西。有人实现过这样的解决方案吗?可能没有钩子(Hook)?尽管我怀疑这是唯一的方法。 最佳答案 我终于明白了。我确实在Cedar堆栈上。问题是我已经将我的public目录检查到Git中,当我推送到Heroku时,它意识到public存在

ruby - 如何使用 Rubyzip 库覆盖现有文件

我正在尝试解压缩一个包含多个文件的文件,这些文件可能已存在于目标目录中,也可能不存在。似乎默认行为是在文件已存在时抛出异常。如何解压缩到一个目录并简单地覆盖现有文件?这是我的代码:beginZip::ZipFile.open(source)do|zipfile|dir=zipfile.dirdir.entries('.').eachdo|entry|zipfile.extract(entry,"#{target}/#{entry}")endendrescueException=>elog_error("Errorunzippingfile:#{local_zip}#{e.to_s}")

ruby - 上帝不会注册正在运行的自定义服务

我有一个Rails网站和一个在linodevps上运行的小型Minecraft服务器。我正在运行minecraft作为基于init.d文件的ram服务器的自定义服务。因为我使用God来监控我的Rails网站,所以我想我也会将它用于我的世界,但它似乎无法以任何方式识别该服务。条件检测不到它的存在。:process_running始终返回false,无论它是否正在运行,并且在未运行时无法启动它。更让人困惑的是:memory_usage和:cpu_usage始终为零。我的/etc/init.d/minecraft文件在这里:http://pastie.org/2760483它工作得非常好,“

ruby - Sinatra 不会在 Chrome 上通过重定向保持 session

Sinatra没有在Chrome上通过重定向保留我的session。它正在创建一个全新的session,我正在丢失我以前的所有session数据。举个例子(类似于theSinatradocs),我正在做这样的事情:enable:sessionsget'/foo'dosession[:user_id]=123session[:session_id]#"ABC",forexampleredirectto('/bar')endget'/bar'do#thisis"DEF"whenrespondingtoChrome(wrong),#but"ABC"whenrespondingtoFirefo

ruby - 在 String 子类上覆盖 =~ 方法会产生不一致

我为String的子类覆盖了=~方法:classMyString重写的方法在某些情况下被正确调用:r=/abc/s=~r#=>"Overriddenmethod."s.send(:=~,r)#=>"Overriddenmethod."s.send(:=~,/abc/)#=>"Overriddenmethod."而在其他情况下它被绕过,而是调用String#=~:s=~/abc/#=>0s=~(/abc/)#=>0我可以在Ruby1.8.7、2.1.0上重现这些结果。有人知道为什么会这样吗?是错误吗? 最佳答案 在String#=~的

ruby-on-rails - Rails 不会在第一次 CTRL-C 时退出

没有Rails命令会在第一次CTRL-C时退出。所以railss或railsc需要我再次按下controlCTRL-C,而以前根本不需要CTRL-C的命令(例如rakeroutes/db:migrate)现在需要我按下它。我的任何队友都没有出现该问题。我在OSX上使用iTerm2。应用程序中没有“救援异常”实例。我刚刚使用brew重新安装了mysql,但问题仍然存在。Rails版本4.0.5和SQLServer版本5.6.27。知道问题出在哪里吗?[2016-01-1316:18:33]INFOWEBrick1.3.1[2016-01-1316:18:33]INFOruby2.1.2(

ruby - 从从 stdin 读取的 Ruby 脚本调用时,Pry 不会停止

我创建了一个控制台Ruby脚本,它使用ARGF从文件或标准输入加载数据,然后调用Pry。当我在(Pry暂停)中传递一个文件但在我使用stdin传递我的数据时失败(Pry不停止并且只是退出Ruby)时,这非常有效。这很奇怪,有人知道为什么吗?我想通过stdin传递数据并让Pry暂停。看,一个示例脚本:require'rubygems'require'pry'defpry_it(str)binding.pryendpry_it(ARGF.read)当我使用ARGV中的文件调用此应用程序时,我得到了正确的响应-暂停%bundleexecrubypry_test.rbfile.txtFrom:

ruby - 我如何在 block 之前的 "expect"更改 rspec 中的某些内容?

我有一个这样构造的测试套件:let(:cat){create:blue_russian_cat}subject{cat}context"emptybowl"dolet!(:bowl){create(:big_bowl,amount:0)}before{meow}#atonof`its`or`it`whichrequire`meow`tobeexecutedbeforemakingassertionits(:status){should==:annoyed}its(:tail){should==:straight}#...#hereIwanttoexpectthatnumberofPet

ruby - 在使用 'chomp' 或 `to_i` 之前是否有必要使用 `to_f` ?

我看到人们使用以下代码:gets.chomp.to_i或gets.chomp.to_f我不明白为什么,当这些行的结果总是与gets之后没有chomp时的结果相同。gets.chomp.to_i真的有必要,还是gets.to_i就足够了? 最佳答案 来自String#to_i的文档:Returnstheresultofinterpretingleadingcharactersinstrasanintegerbasebase(between2and36).Extraneouscharacterspasttheendofavalidnum

ruby-on-rails - 覆盖由同一模块中的类方法定义的 ActiveSupport::Concern 模块中的方法

我有一个ActiveSupport::Concern模块,大致如下所示:moduleMyModelmoduleAcceptanceextendActiveSupport::Concernincludeddoenumstatus:[:declined,:accepted]enddefdeclined!self.status=:declined#someextralogicself.save!enddefaccepted!self.status=:accepted#someextralogicself.save!endendend这只会被包含到ActiveRecord类中,因此使用enum